package com.ruicar.afs.cloud.apply.contract.vo;

import com.alibaba.fastjson.annotation.JSONField;
import com.ruicar.afs.cloud.apply.common.entity.*;
import com.ruicar.afs.cloud.bizcommon.business.entity.FinCostDetails;
import lombok.Data;

import java.math.BigDecimal;
import java.util.Date;

/**
 * @description: 合同信息录入
 * @author: sijun.yu
 * @date: 2020/7/24 12:23
 */
@Data
public class ContractTemplateVO {

    /**
     * 订单信息
     */
    private ApplyOrderInfo order;
    /**
     * 合同信息
     */
    private ApplyContractInfo contract;
    /**
     * 主借人
     */
    private ApplyMainCustVO mainCust;
    /**
     * 共借人
     */
    private ApplyMainCustVO coCust;
    /**
     * 保证人
     */
    private ApplyMainCustVO bailCust;
    /**
     * 车款融资信息
     */
    private FinCostDetails carCost;
    /**
     * 附加贷融资信息
     */
    private FinCostDetails addCost;
    /**
     * 渠道信息
     */
    private ApplyChannelInfo channel;
    /**
     * 车辆信息
     */
    private ApplyCarDetails carDetails;
    /**
     * 银行卡信息
     */
    private ApplyBankCard bankCard;
    /**
     * 增融项信息
     */
    private ApplyAddPriceItems addInfo;
    /**
     * 挂靠信息
     */
    private ApplyAffiliatedUnit unit;
    /**
     * 附加金额
     */
    private BigDecimal addAmt;
    /**
     * 有购置税
     */
    private String isPurchaseTax;
    /**
     * 无购置税
     */
    private String noPurchaseTax;
    /**
     * 购置税金额
     */
    private BigDecimal purchaseTaxAmt;
    /**
     * 有车辆保险
     */
    private String isInsurance;
    /**
     * 无车辆保险
     */
    private String noInsurance;
    /**
     * 车辆保险金额
     */
    private BigDecimal insuranceAmt;
    /**
     * 有GPS
     */
    private String isGps;
    /**
     * 无GPS
     */
    private String noGps;
    /**
     * GPS金额
     */
    private BigDecimal gpsAmt;
    /**
     * 有装潢
     */
    private String isDecorate;
    /**
     * 无装潢
     */
    private String noDecorate;
    /**
     * 装潢金额
     */
    private BigDecimal decorateAmt;
    /**
     * GPS实际成交价格
     */
    private BigDecimal gpsPrice;
    /**
     * 装潢费实际价格
     */
    private BigDecimal decoratePrice;
    /**
     * 附加产品
     */
    private String financeItemNames;
    /**
     * 贷款本金
     */
    private BigDecimal totalLoanAmt;
    /**
     * 贷款本金大写
     */
    private String totalBigLoanAmt;
    /**
     * 首付款金额
     */
    private BigDecimal tailDownPayAmt;
    /**
     * 等额本息-每月还款额
     */
    private BigDecimal tailMonthPayAmt = BigDecimal.ZERO;
    /**
     * 等额本金-每月还款额
     */
    private BigDecimal equalPrincipalRent = BigDecimal.ZERO;
    /**
     * 结构化贷款-每月还款额
     */
    private BigDecimal structuredLoanRent = BigDecimal.ZERO;
    /**
     * 弹性贷尾款
     */
    private BigDecimal tailPayAmt;
    /**
     * 合同总金额
     */
    private BigDecimal totalContractAmt;
    /**
     * 打印时间
     */
    private String printDate = "      年    月    日";

    /**
     * 挂靠期限
     * */
    @JSONField(name = "startTime", format = "yyyy-MM-dd")
    private Date startTime;
    /**
     * 合同起止时间
     * */
    private String endTime;
    /**
     * 发票信息
     * */
    private ApplyCarInvoice carInvoice;
    /**
     * 二维码
     */
    private String rqCode;
}
